class Welcome:
    def __init__(self, name):
        self.name = name

    def __call__(self, fun):
        def wrapper(*args, **kwargs):
            print(f"Welcome {self.name}")
            result = fun(*args, **kwargs)
            return result

        return wrapper


@Welcome("Tom")
def my_fun(name1):
    print(f"hello {name1}")


if __name__ == '__main__':
    my_fun("jack")
